perm filename PAPERA.9[DOC,TOB] blob
sn#027213 filedate 1973-02-26 generic text, type T, neo UTF8
00100 COMPUTER VISION
00200 by
00300 Thomas O. Binford, Stanford University and
00400 Jay M. Tenenbaum, Stanford Research Institute
00500
00600
00700 Introduction.
00800
00805 Intelligent computers require knowledge of their environment, and the
00905 most effective means of acquiring such knowledge is by seeing. Vision
01005 will open a new realm of computer applications. Weather analysis from
01105 cloud maps and medical diagnosis from x-rays and blood cell counts
01205 are two of many high volume data processing tasks that require
01305 pictorial input. Man-machine communication will be facilitated if a
01405 person can directly show the computer a real object, rather than
01505 having to describe it symbolically. Designers, for example, could
01605 then easily obtain a computerized structural analysis of scale
01705 models.
01805
01905 A particularly exciting area of application is industrial automation.
02005 Today in industry there are hundreds of machines called industrial
02105 robots. These programmable manipulators can repetitively execute a
02205 precise sequence of motions but have no sensors and are thus unable
02305 to react dynamically to contingencies. Simple sensors and a
02405 minicomputer could, at slight additional cost, turn these
02505 manipulators into true robots. Primitive visual skills would enable
02605 these machines to align mating parts in assembly operations, increase
02705 reliability by self-calibration, detect flaws and avoid disasters.
02805 Vision will also minimize the present need for precise positioning of
02905 parts at each work station; parts could instead be transported in a
03005 bin and picked out as needed.
03105
03205 The study of perception also provides valuable insights into human
03305 and machine information processing. Many of the problems encountered
03405 are widespread in intelligence: How is knowledge represented? How
03505 does it guide in drawing conclusions from perceptual data? How does
03605 existing knowledge interact with conclusions drawn from an image to
03705 acheive learning? Issues that arise in the implementation of vision
03805 systems have broad relevance to computer science: How shoulc a
03905 complex task be partitioned into modules? How should the modules
04005 communicate to share their knowledge and special capabilities? How
04105 should systems with highly interdependent modules be structured to
04205 facilitate modification?
04305
04405 Techniques developed for machine perception cannot be taken literally
04505 as models for biological systems because of differences in hardware
04605 and gaps in our knowledge. However, fundamental limitations are
04705 shared, suggesting that some of the principles might also be found in
04805 nature. The research may, in turn, occasionally borrow from biology,
04905 but we cannot copy nature, since again, the details are not yet known
05005 and the hardware is different.
05105
05205
05305 Historically, computer vision emerged from the study of two
05405 dimensional pattern recognition. However, it is seldom possible to
05505 apply the mathematical formalisms developed for classification to the
05605 analysis of real scenes. Consider the visual requirements for an
05705 organism such as a robot. It must manipulate or avoid objects, not
05805 just classify them. Manipulation requires three-dimensional
05905 interpretations and spatial relations of objects. In problems like
06005 character recognition, it was attractive to simply save images or
06105 feature vectors, then match against an image or part of an image.
06205 But in real scenes, objects occlude one another, they have parts with
06305 joints that move separately, there are many viewpoints, many possible
06405 objects, and many combinations of objects. Object classes, moreover,
06505 are often defined by function, not shape (eg. the class of coffee
06605 cups). Direct template matching techniques are impractical for
06705 these requirements, except in very carefully controlled applications.
06805 Perception involves complex deductions to understand an image in
06905 terms of a priori knowledge of the world.
07005 ELEMENTS OF A VISUAL SYSTEM
07105
07205 The computer eye is some form of tv camera with color filters and a
07305 turret or zoom lens for closeup views. The computer controls
07405 filters, lens and other parameters to optimize the image for each
07505 task [Tenenbaum]. A recent study has suggested alternative sensors
07605 to overcome the inadequate dynamic range of television systems
07705 [Binford]. Range information greatly simplifies the interpretation of
07805 scenes. Humans use depth information obtained from stereo and a
07905 variety of inferred cues such as motion parallax and the size of
08005 known objects. Since these techniques require subtantial processing,
08105 it is easier for machines to obtain depth by direct measurement.
08205 Several depth sensors based on triangulation have been built [Agin,
08305 Shirai, Munson].
08405
08505 An image is read into memory as an array of brightness values
08605 (typically 300x300) with 4-8 bits for each sample for each color. The
08705 process of interpreting this mass of numbers into a symbolic
08805 description can be thought of as subdivided into segmentation,
08905 representation, and interpretation.
09005
09105 The process of segmentation partitions a scene into meaningful
09205 entities which may be recognizable. Segmentation in character
09305 recognition is simple since printed characters are spatially
09405 separated and have high contrast with white paper. It is harder to
09505 segment objects in a real scene (even simple scenes) since objects
09605 may overlap and will not usually be separable from the local
09705 background by a single attribute like brightness contrast. Instead,
09805 segmentation must proceed by seeking regions of uniform brightness,
09905 color, or texture (itself a complex descriptor), or regions with
10005 regular boundaries. Segmentation may also depend on inferred depth
10105 cues (e.g., texture gradients or suspected occlusion).
10205
10305 In what form can we represent objects internally in the computer?
10405 The simplest form is a pictorial template, an array of brightness
10505 values to be matched directly against fragments of scenes by
10605 correlation. Given the inadequacies of this representation, we must
10705 describe partitioned regions symbolically in terms of extracted
10805 features like color, size, texture, and shape. All these properties
10905 are inferred by complex processes from the image. Simple descriptors
11005 for shape or texture may be used in simple tasks and limited context.
11105 Shape might be described by the ratio of the squared perimeter to the
11205 area of a region. More sophisticated shape representations, needed
11305 for a wider range of tasks, are described later.
11405
11505 Interpretation is often expressed as computing a distance measure
11605 between an object and a stored model. For simple cases that can be
11705 useful. When objects are occluded, there must be a partial match.
11805 When objects are not identical, judgments of similarity depend on
11905 representation of shape and representation of the task, in order to
12005 define important differences. The most useful approach is to build
12105 up symbolic descriptions and make symbolic descriptions of
12205 differences. Sometimes, there are few enough models that matching
12305 with each model is possible. More generally, the observed features
12405 must first be used to retrieve likely models from a large visual
12505 memory.
12605
12705 The integration of segmentation, representation and interpretation to
12805 achieve perception is illustrated by a system built at the University
12905 of Edinburgh [Barrow] which can recognize a small set of ordinary
13005 objects such as pencils, eye-glasses and teacups. Objects are
13105 presented against a contrasting background. Segmentation is achieved
13205 by partitioning the scene into regions of uniform brightness. Objects
13305 are represented by relational graphs detailing gross attributes
13405 (size, shape) of their principle regions and spatial constraints
13505 between them. Interpretation is accomplished by mapping the
13605 relational graph descriptions of known objects onto the segmented
13705 regions obtained from the scene and seeking the best match.
13805
13905 Experience with early bottom-up systems of this type led to the
14005 realization that the three basic processes of a perceptual system
14105 were highly interdependent; one cannot proceed sequentially through
14205 segmentation, representation and interpretation and expect to obtain
14305 a globally consistent interpretation for all objects in a scene. One
14405 problem is that no reliable basis exists for judging the global
14505 significance of segmentation boundaries using local similarity
14605 criteria. Segmentation must be guided by interpretation to choose
14705 among many alternative partitionings, that which leads to a globally
14805 consistent and reasonable description of the scene.
14855 A nice exposition of these ideas is given by Minskey [1972].
14880
14905 BLOCKS WORLD
15005
15105 To avoid some of these difficulties, research concentrated initially
15205 on scenes of toy blocks. Roberts' important work opened the field
15305 []. Objects were represented as built up of three primitive parts, a
15405 block, a wedge, and a hexagonal prism. The program assumed it would
15505 first obtain perfect line drawings. Interpretation meant choosing a stored
15605 three-dimensional model which after translation, rotation and scaling
15705 could be projected to match part of the image. The recognized piece
15805 was then cut away and the remainder considered. Primitives were
15905 represented by their vertices in three dimensions. To decide on
16005 likely image points which belonged to a single body, the program
16105 attempted to identify unobscured polygons, then match sets of
16205 vertices to topologically similar model vertices. Line drawings were
16305 formed by a sequence of local operations. Candidate edge points were
16405 considered by thresholding the gradient of intensity. Isolated edge
16505 points were discarded. Connected line fragments were concatenated
16605 into lines which were segmented at corners by a sequential least
16705 squares line fit. Merging of colinear lines bridged some gaps.
16805
16905 That system organization has proven inadequate. It is not enough to
17005 use models and template matching. Producing perfect line drawings is
17105 not practical: some lines are missed; shadows, reflections and
17205 surface markings cause extra lines; errors made at one stage are
17305 compounded by later stages. These deficiencies motivated subsequent
17405 research.
17505
17605 Guzman [] found it possible to segment complex scenes into objects
17705 without template matching, by observing that some vertices give local
17805 evidence that adjacent regions belong to the same body. In figure 1,
17905 vertices A,B,C,E,G and H give evidence that adjacent regions belong
18005 to the same body, while vertex F does not. Vertex D which resembles
18105 G gives misleading evidence. To avoid such coincidences, the program
18205 required confirmation. Regions linked twice were joined into
18305 clusters; regions linked twice to a cluster were also joined.
18405 Regions linked only to a single cluster were also joined to that
18505 cluster. Eventually, the program evolved to include inhibitions
18605 against certain links by requiring similar conditions at both ends of
18705 a line. Other links were introduced without much motivation.
18805
18905 This program was an important advance. Bodies could be segmented
19005 without recognition and without explicit models. The program did
19105 surprisingly well, but had problems with holes and other
19205 non-convexities, and with accidental alignment. being told the
19305 background. Guzman also could not cope well with imperfect line
19405 drawings. His program would fail figure 2 because a missing line
19505 makes region R3 common to both the block and wedge. Falk [ ] was able
19605 to avoid some of the errors associated with missing boundaries by
19705 using a Guzman like approach to link line segments likely to belong
19805 to the same object instead of regions.
19905
20005 The limited generality of both these programs was due to the fact
20105 that they were implemented as a collection of adhoc heuristics for
20205 segmentation with no explicit understanding of line drawings. Thus,
20305 while Falk himself realized that regions like R3 were non-planer and could not arise in a
20405 scene containing only trihedral solids, his program could not reason
20505 at this level. Huffman [] and Clowes [] made theoretical analyses of
20605 objects with only trihedral vertices (three planes at each vertex).
20705 By classifying edges at each vertex as convex, concave and obscuring, they could
20805 reject some drawings as
20905 impossible if a given line was not consistently labeled at each end. Waltz [] expanded that
21005 labelling of lines to include cracks and whether adjacent regions
21105 were shadowed or illuminated. Since each vertex could have many interpretations.
21205 it would seem that a search for consistent labelings
21305 would be unmanageable. Instead, the increased precision of
21405 descriptions allows rapid discarding of wrong interpretations. Not
21505 only are solutions possible, they are quickly obtained. Instead of a
21605 complete tree search, it was adequate to consider vertices in
21705 sequence, eliminating inconsistent interpretations as each new vertex
21805 was added. This produced all possible interpretations of a scene.
21905 However, some evaluations were possible to choose reasonable
22005 interpretations, in cases with ambiguous interpretations. A detailed
22105 survey of the work through Huffman appears in a recent text by Duda
22205 and Hart [1973].
22305
22405
22505
22605
22705
22805 The best performance in extracting line drawings from television
22905 images of polyhedra is given by the Shirai [] and the Binford-Horn []
23005 line finders. Shirai's system performs better, but requires large
23105 contrast between objects and background (e.g., white on black), and
23205 finds only features and objects for which cues are available from
23305 context. The Binford-Horn system is able to find most lines in a
23405 scene of white blocks on a white background in arbitrary lighting.
23505 It misses a few lines which can usually be inferred from those that
23605 were found, and garbles some vertices. The two are complementary
23705 and should be combined.
23805
23905 The two programs are based on different principles. Shirai's program
24005 first found the outer boundaries of an object or cluster of objects.
24055 It then tried to guess additional lines which were parallel, perpendicular
24080 or extensions to lines already found. Search for missing lines concentrated
24092 around vertices in the preliminary drawing where they would be most likely found.
24405 The use of context involved
24505 not changing thresholds, but using special-purpose operators: verify
24605 a line at known position and angle; find a line through a vertex.
24610 Figure 3
24657 illustrates the complexity of scenes handled by Shirai's program.
24705 The Binford-Horn system was intended to provide the base for a system
24805 such as Shirai's by providing a partial line drawing without special
24905 assumptions about the scene. It used a local directional edge operator and an optimal
25005 sequential decision process to group the edge points into continuous curves.
25305
25405 It is interesting to compare these systems with biological
25505 ones. The directional edge operators which are scanned over the image
25605 [Binford, Hueckel] are analogous to the edge detector cells
25705 discovered by Heubel and Wiesel[] in higher animals. In practice,
25805 large brightness gradients at reflections and on curved surfaces cause masses of
25905 spurious edge fragments. Smooth gradients are eliminated by subtracting the
26005 local average at each point,
26105 a process similar to lateral inhibition in the
26205 retina of animals.
26305
26405
26505
26605 REAL WORLD VISION
26705
26805
26905
27005 The blocks world illustrates many basic aspects of machine
27105 perception. However, since many critical problems encountered in
27205 perceiving real world scenes do not arise, few of the techniques
27230 developed extend to this domain. For example:
27242
27255 1. Important problems in
27305 segmentation were avoided by using uniformly painted blocks.
27405 Moreover, all boundaries were straight lines. The
27505 region-growing and edge-finding techniques developed in this context
27605 cannot cope with the textures and variations of brightness that
27705 predominate in the real world.
27805
27905 2. The precise topological descriptions that characterized simple
28005 polyhedra are inappropriate or unobtainable for complex real world
28105 objects such as trees.
28605
28655 3. Interpretation by exhaustively matching all known prototypes against
28680 each segmented body is not feasible with large numbers of objects and cluttered scenes.
30005
30105 Description of simple polyhedral scenes was difficult enough; with
30205 these added obstacles, is there hope for success in perceiving the
30305 real world?
30330 Perception in the blocks world sought a complete description of everything present.
30355 It may not be possible (or even
30405 meaningful) to obtain exhaustive descriptions of real scenes. However, complete
30505 descriptions are seldom needed; a system is typically concerned
30605 with only a few objects required to complete a specific task.
30655
30705 For blocks, we restricted our programs to black and white images and
30805 distinguished structures of blocks solely on the basis of shape. In
30905 the real world, there is a tremendous redundancy of visual cues. We
31005 can use color, texture, depth, size,
31105 and surface orientation, as well as shape, whichever distinguishes a
31155 particular object most effectively.
31180
31205 Real world objects are usually found in well defined contexts; e.g.,
31305 telephones are expected on tables but not in waste baskets.
31405 Recognition of a few prominent landmarks, combined with a priori
31505 knowledge of the environment can thus severely restrict what objects
31605 may be present in each part of the scene. While these objects may be
31705 difficult to describe, there will usually be sufficient cues
31805 available to discriminate easily amongst the alternatives.
31855 Often, very gross descriptions of complex attributes like shape will
31880 suffice to discriminate amongst a limited number of grossly different
31892 alternatives (e.g., a person can be simply distiguished from a dog by the vertical
31895 orientation of its body).
31901
31905 Real world vision can be viewed as a strategy problem: Given a task, first decide
32005 where to look for objects of interest and then decide how to distinguish
32105 them from other objects that might also be present.
32110 The system must limit interpretations to
32118 a small subset of possible objects, selected on the basis of a priori
32122 expectations and crude descriptions of the scene.
32126 Segmentation can be based on attributes which are known to be uniform over
32134 these objects.
32150 The key problems of information overload are overcome
32158 by tightly coordinating segmentation
32166 and interpretation with world knowledge and task goals. The overload cannot be
32174 solved by merely building faster computers and bigger memories;
32182 hardware improvements will aid adequate techniques but do little for
32190 exhaustive techniques.
32205
32305 The principle work to date on real world vision has concentrated on
32405 segmentation and representation.
32430 Segmentation of textured scenes has been studies as a two-dimensional
32442 problem
32455 for agricultural and earth
32505 resource survey applications.
32605 Bajcsy [] has analyzed outdoor scenes with perspective, where
32705 three-dimensional texture descriptions are important. Textures were
32805 described hierarchically in terms of simpler texture elements and
32905 their spatial relationships. Descriptors for texture elements and
33005 relations were derived from Fourier analysis. Typical attributes
33105 were directionality (if any), size, contrast, and spacing of texture
33205 elements. The Fourier transform was found troublesome,however, and
33305 color descriptors were added to improve performance. Some depth
33405 relations could be observed from texture gradient. An attempt was
33505 made to obtain consistent interpretations by first confirming region
33605 boundaries by independent properties, making three-dimensional
33705 interpretations, and matching region descriptors with those of sky,
33805 trees, grass, etc. in a world model.
33905
34005 The quality of interpretation was limited by unreliability of
34105 region-growing processes. Further work in outdoor scenes attempts to
34205 incorporate the world model and interpretation into the region
34305 growing process. Regions are merged not only because of similarity of
34405 properties, but because the consistency of semantic interpretation is
34505 improved.
34605
34705
34805 Typical robot tasks such as manipulation, collision avoidance,
34905 display and recognition were analyzed to determine computational
35005 primitives required for descriptions of shape. Although some would
35105 disagree, our criteria for shape representation are [ ]:
35205
35305 a) Representations should be symbolic at a high level in order to
35405 interface with knowledge of the problem domain.
35455
35480 b) Representations
35505 should depend on segmentation into parts, which may have subparts.
35655
35680 c) Primitives
35705 should be three-dimensional volume descriptions, rather than surface
35805 descriptions to allow a natural choice of parts.
35855
35880 d) Descriptions should be generative. A modest
35905 collection of primitives should allow description of a vast set of
36005 objects.
36105
36205 We will outline one representation that fulfils these desiderata for
36305 a large class of curved objects. Objects are described in terms of
36405 components which are simple to describe, and the relationships of
36505 these parts. A useful shape primitive for many curved objects is an
36605 arbitrary space curve, and normal cross-sections along this axis
36705 (figure 5). Snake-like objects, helices, toroids, and locally
36805 helical and toroidal shapes are naturally described [Binford 71]. Our
36905 basic definition of a simple piece is that the direction
37005 of its axis be continuous and that the cross-section function along
37105 that axis be continuous. We look for large changes in
37205 the cross- section, and consider them as likely places for segmenting
37305 the object. The segmentation process must be flexible and able to
37405 generate alternate propositions. A higher level routine will
37505 ultimately select from the alternatives. Figure 6 shows an
37605 experimentally obtained computer description of a doll [Agin 72].
37705 INDUSTRIAL APPLICATIONS
37805
37905 Recently, several laboratories have begun to apply techniques from
38005 perception research to practical industrial tasks.
38030 Stanford University has demonstrated simple assembly operations using
38042 vision and touch.
38055 General Motors
38105 laboratories has succeeded in mounting a wheel on an axle. Stanford
38205 Research Institute and Hitachi Ltd. have each demonstrated systems
38305 which can distinguish sheet metal parts on a moving conveyor belt and
38405 determine their orientation to enable manipulation. Template matching
38505 techniques were used to take advantage of the two dimensional nature
38605 of these tasks. Moreover, the conveyor demonstrations relied on the
38705 contrast between shiny metalic parts and the black belt to simplify
38805 segmentation. Many industrial processes share similar constraints or
38905 can be readily redesigned to do so. We thus expect a proliferation of
39005 industrial applications of computer perception in the near future.